home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / asm / d4851z.com / D48.DOC < prev    next >
Encoding:
Text File  |  1990-08-22  |  2.5 KB  |  51 lines

  1.  
  2. D48 8048/8041 Disassembler - Copyright 1990 by Jeffery L. Post
  3.  
  4.     D48 is a cross disassembler for MSDOS machines. It generates an 8048
  5. assembly source code file from either a binary file or an Intel hex file.
  6. The executable code for D48 is public domain. The C source code for this
  7. program is NOT public domain but may be purchased from the author for
  8. personal or educational use only. To obtain the C source on a standard
  9. 360K MSDOS 5 1/4" diskette, send $10 cash, check, or money order to:
  10.  
  11.         Jeffery L. Post
  12.         22726 Benner Ave.
  13.         Torrance, CA  90505
  14.  
  15. The executable program may be freely distributed through public domain
  16. channels (bulletin boards, PD software houses, friends, etc) provided
  17. this documentation file is included.
  18.  
  19.     Command line format is: d48 filename [options]. The filename should
  20. be entered without an extension. The default extension is HEX. If the 'b'
  21. (binary file) option is used, the default extension is BIN. The 'd' (data)
  22. option will append a comment field to each assembly line consisting of the
  23. address of the instruction and hex and ascii representations of the code
  24. byte(s). Option entry is freeform: 'db' 'd b' '-bd' '-b -d' all mean the
  25. same thing.
  26.  
  27.     D48 does two passes over the code being disassembled. The first pass
  28. searches for opcodes that reference program locations (such as jumps and
  29. calls) so that labels may be generated in the source listing. Pass two does
  30. the actual disassembly and writes source lines to the output file. Pass three
  31. then searches for references to locations outside of the initialized program
  32. space or to locations that lie in the middle of opcodes and generates equate
  33. statements for them.
  34.  
  35.     D48 is an 'intelligent' disassembler. Since uninitialized space in a
  36. program will normally be filled with either 0 or 0ffh, blocks of such data
  37. will not be disassembled as page after page of NOP or MOV A,R7. They will
  38. be skipped over and an ORG statement will be inserted in the assembly output
  39. when the next initialized code is encountered.
  40.  
  41.     Despite all it's wonderfulness, D48 does have some drawbacks. Chief among
  42. them is that it does not try to analyze program flow, and therefore cannot
  43. tell the difference between valid executable code, data tables, and/or ascii
  44. data. This can lead to some strange looking disassembly when ascii data or
  45. address tables are encountered. The 'd' option is useful for identifying such
  46. problems.
  47.  
  48.     Comments, suggestions, bug reports, praise, or diatribes of any kind may
  49. be sent to the author at the address given above.
  50.  
  51.